package diagrama;

import java.io.Serializable;
import java.util.TreeSet;

/**
 * @author Marcos, Ricardo e Roberto
 *
 */
public class Curso extends Escola implements Serializable,Comparable<Curso>{

	/**
	 * esse atributo representa o codigo do curso
	 */
	private String id;
	/**
	 * esse atributo irá guardar o tipo do curso (Ex: Palestra, curso superior, etc)
	 */
	private String tipo;
	/**
	 * Esse atributo irá guardar a duração do curso, que poderá ser longa, média ou curta
	 */
	private String duracao;
	private Turma[] RelTurmas = new Turma [50];
	
	
	public Curso(String id, String nome, String tipo, String duracao) {

		
			// TODO Auto-generated constructor stub
		super (nome);
		this.id = id;
		this.tipo = tipo;
		this.duracao = duracao;
	}

	public Curso(String id, TreeSet turma[]){
		
	}
	
	public Curso(String id) {
		this.id = id;
	}
	
	public void adicionarTurma(String nomeTurma){
		Turma t = new Turma(nomeTurma);
		getTurma().add(t);			
	}
	
	//----------- métodos get and set-----------------------------------	
	public String getTipo() {
		return tipo;
	}

	public void setTipo(String tipo) {
		this.tipo = tipo;
	}

	public String getDuracao() {
		return duracao;
	}

	public void setDuracao(String duracao) {
		this.duracao = duracao;
	}

	public TreeSet getTurma() {
		return Tturma;
	}

	public void setTurma(TreeSet<Turma> turma) {
		this.Tturma = turma;
	}

	@Override
	public int compareTo(Curso o) {
		return this.id.compareTo(o.id);
	}
	
	@Override
	public String toString() {
		return "Curso [id=" + id + ", nome= " + getNome() + " tipo: " +
				tipo + " Duracao: "+ duracao + "]";
	}

	/**
	 * @param relTurmas the relTurmas to set
	 */
	public void setRelTurmas(Turma[] relTurmas) {
		RelTurmas = relTurmas;
	}

	/**
	 * @return the relTurmas
	 */
	public Turma[] getRelTurmas() {
		return RelTurmas;
	}
}
